package com.example.vo;

import com.example.domain.Book;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 带位置信息的图书VO
 * 
 * @author CodeBuddy
 * @description 包含图书基本信息和书架位置详情
 * @createDate 2025-08-30
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class BookWithLocationVO extends Book {
    
    /**
     * 书架编号
     */
    private String bookshelfNumber;
    
    /**
     * 房间名称
     */
    private String roomName;
    
    /**
     * 图书馆名称
     */
    private String libraryName;
    
    /**
     * 完整位置路径（格式：图书馆名称 > 房间名称 > 书架编号）
     */
    private String fullLocationPath;
    
    /**
     * 设置完整位置路径
     */
    public void setFullLocationPath() {
        if (libraryName != null && roomName != null && bookshelfNumber != null) {
            this.fullLocationPath = libraryName + " > " + roomName + " > " + bookshelfNumber;
        }
    }
}